package listdemo;

import java.util.Arrays;

public class MyArrayList {
    public int[] elem;
    public static final int DEFAULT_CAPACITY = 10;
    int usedSize = 0;
    public MyArrayList(){
        this.elem = new int[DEFAULT_CAPACITY];
    }

    // 打印顺序表,(只需要打印到usedSize位置就行了)
    public void display() {
        for (int i = 0; i < usedSize; i++) {
            System.out.print(elem[i]+" ");;
        }
        System.out.println();
    }

    //检查数组是否装满了
    public boolean ifFull(){
        return usedSize == elem.length;
    }

    // 新增元素,默认在数组最后新增 (尾插)
    public void add(int data) {
        //插之前要检查一下 容量慢没
        //扩容
        try {
            if (ifFull()) {
                elem = Arrays.copyOf(elem,-1);
            }
        }
        catch (NegativeArraySizeException e){
            e.printStackTrace();
            elem = Arrays.copyOf(elem,2*elem.length);

        }
        elem[usedSize++] = data;

    }
    // 在 pos 位置新增元素
    public void add(int pos, int data) { }
    // 判定是否包含某个元素
    public boolean contains(int toFind) { return true; }
    // 查找某个元素对应的位置
    public int indexOf(int toFind) { return -1; }
    // 获取 pos 位置的元素
    public int get(int pos) { return -1; }
    // 给 pos 位置的元素设为 value
    public void set(int pos, int value) { }
    //删除第一次出现的关键字key
    public void remove(int toRemove) { }
    // 获取顺序表长度
    public int size() { return 0; }
    // 清空顺序表
    public void clear() { }



}
